#ifndef SETPINSEL_H_
#define SETPINSEL_H_

/*******************************************************************************
 * File name: 		setpinsel.h
 * Description: 	macros set PINSELs
 * Project: 		IEC
 * Target: 			LPC2478
 * Compiler: 		arm-none-eabi-gcc
 * Date: 			2011-04-11
 * Author: 			Olimex
 * Based on:
 ******************************************************************************/

/*==============================================================================
 Includes
==============================================================================*/

/*==============================================================================
 Defines
==============================================================================*/
# define LONG2BIN(n) ((	(n >> 21) 	& 	0x80)| \
							((n >> 18) 	& 	0x40)| \
							((n >> 15) 	& 	0x20)| \
							((n >> 12) 	& 	0x10)| \
							((n >>  9) 	& 	0x08)| \
							((n >>  6) 	& 	0x04)| \
							((n >>  3) 	& 	0x02)| \
							((n      ) 	& 	0x01))

# define __BIN(n) LONG2BIN	(0x##n##l)

# define BIN32(b1,b2,b3,b4) ((((uint32)__BIN(b1))	<< 24UL) + \
                            (((uint32)__BIN(b2)) 	<< 16UL) + \
                            (((uint32)__BIN(b3)) 	<<  8UL) + \
                              (uint32)__BIN(b4))
/*==============================================================================
 Globals
==============================================================================*/

/*==============================================================================
 Global function prototypes
==============================================================================*/

/*==============================================================================
 ISR prototypes
==============================================================================*/

/******************************************************************************
* END OF FILE
******************************************************************************/


#endif /* SETPINSEL_H_ */
